package com.cskaoyan.javase.homework.day16;

import java.util.Scanner;

/**
 * @description:
 * @author: 景天
 * @date: 2022/2/11 9:59
 **/

/*
判断一个字符串是否是对称字符串,例如"abc"不是对称字符串，"aba"、"abba"、"aaa"、"mnanm"是对称字符串

判断一个字符串是否是对称的字符串，我只需要把

第一个和最后一个比较

第二个和倒数第二个比较

...

可以借助StringBuffer
 */
public class Work4 {
    public static void main(String[] args) {
        // 创建键盘录入对象
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个字符串：");
        String s = sc.nextLine();

        // 一个一个的比较
        boolean b = isSame(s);
        System.out.println("b:" + b);

        //用StringBuffer的反转功能
        boolean b2 = isSame2(s);
        System.out.println("b2:"+b2);
    }

    public static boolean isSame2(String s) {
        return new StringBuffer(s).reverse().toString().equals(s);
    }



    public static boolean isSame(String s) {
        boolean flag = true;

        // 把字符串转成字符数组
        char[] chs = s.toCharArray();

        for (int start = 0, end = chs.length - 1; start <= end; start++, end--) {
            if (chs[start] != chs[end]) {
                flag = false;
                break;
            }
        }

        return flag;
    }
}
